package miage.rest.validation;

/**
 *
 * @author Schwartz Michaël
 */
public class LongRangeValidator extends LongValidator {
	private final Long min;
	private final Long max;

	public LongRangeValidator(Long min, Long max) {
                super();
		this.min = min;
		this.max = max;
	}

	@Override
	public boolean isValid(String value) {
		boolean result = false;
		result = super.isValid(value);
		if (result) {

			Long intVal = Long.parseLong(value);

			if (min != null && intVal < min) {
				addMessage(value + " n'est pas supérieur ou égal à " + min);
				result = false;
			}

			if (max != null && intVal > max) {
				addMessage(value + " n'est pas inférieur ou égal à " + max);
				result = false;
			}

		}

		return result;
	}
}
